import 'reflect-metadata'

export function SetMetadata(metadataKey: string | Function, metadataValue: any) {
    return (target: object | Function, propertyKey?: string, descriptor?: PropertyDescriptor) => {
        // 如果有该值说明装饰的方法
        if (descriptor) {
            Reflect.defineMetadata(metadataKey, metadataValue, descriptor.value);
        } else {
            Reflect.defineMetadata(metadataKey, metadataValue, target);
        }
    }
}
